home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Magazin: Amiga-CD 1995 October
/
Amiga-CD 1995 #10.iso
/
weitere_demos
/
adm
/
arexx
/
intuinews-export.adm
< prev
next >
Wrap
Text File
|
1995-06-04
|
3KB
|
142 lines
/* $VER: IntuiNews-Export.adm 1.2 (29.4.95)
von Kai Bolay.
Speichert alle EMail-Adressen in einer Datei im Format des
UMS-Mail/Newsreaders IntuiNews.
Es wird eine Datei mit dem Dateinamen, der in der
UMS.Config-Variable "IntuiNews.book" definiert ist, angelegt.
1.0 [kaib] - erstes Release
1.2 [jan] 29.4.95 - RexxReqTools-Name - und Passworteingabe
- Anpassung an ADM>1.46: CRs aus Bemerkung
löschen!
*/
OPTIONS RESULTS
SIGNAL ON BREAK_C
SIGNAL ON BREAK_D
SIGNAL ON BREAK_E
SIGNAL ON BREAK_F
SIGNAL ON ERROR
SIGNAL ON HALT
SIGNAL ON IOERR
SIGNAL ON SYNTAX
NL = "0a"x
libname = "ums.library"
reqname = "rexxreqtools.library"
if ~show("L", libname) then do
if ~addlib(libname, 0, -210, 8) then do
say libname "not found!"
end
end
if ~show("L", reqname) then do
if ~addlib(reqname, 0, -30, 0) then do
say reqname "not found!"
end
end
/* Passworteingabe */
passname = rtgetstring("sysop",'Bitte UMS-Username eingeben',"IntuiNews-Export")
IF passname = "" THEN EXIT
password = rtgetstring("",'Bitte Passwort eingeben',"IntuiNews-Export")
/* UMS-Login */
account = UMSLogin(passname,password)
if account = 0 then do
say "unable to login."
exit 10
end
filename = UMSReadConfig(account, "IntuiNews.Book")
call UMSLogout(account)
IF ~OPEN(file,filename,"W") THEN DO /* Ausgabedatei öffnen */
SAY "Kann Ausgabedatei nicht öffnen!"
EXIT
END
LOCKGUI
ADDRINMEM
numadr = RESULT
IF numadr<1 THEN DO
SAY "Keine Adressen im Speicher"
EXIT
END
ACTIVATEFIRST
DO FOR numAdr UNTIL RESULT=-1
GETADDRESS ADR
IF RESULT=0 THEN DO
IF ADR.EMAIL1 ~= "" then do
/* CRs aus Bemerkung löschen */
parse var ADR.REMARK1 ADR.REMARK1 '0A'x .
ok = WriteLn(file,ADR.FIRSTNAME ADR.LASTNAME)
ok = WriteLn(file,ADR.REMARK1)
ok = WriteLn(file,MakeEMail(ADR.EMAIL1))
IF ADR.EMAIL2 ~= "" then do
ok = WriteLn(file,MakeEMail(ADR.EMAIL2))
end
ok = WriteLn(file,"")
end
ACTIVATENEXT /* Akt. naechsten Eintrag */
END
END
ok = Close(file)
RC = 0
BREAK_C:
BREAK_D:
BREAK_E:
BREAK_F:
ERROR:
HALT:
IOERR:
SYNTAX:
UNLOCKGUI
IF RC ~= 0 THEN DO
SAY "Error: " rc errortext(rc) "Line" sigl
END
exit
MakeEMail: procedure
parse arg admemail
if left(admemail,5) = "UUCP=" then do
return right(admemail,length(admemail)-5)
end; else if left(admemail,5) = "FIDO=" then do
return right(admemail,length(admemail)-5) || "@fidonet"
end; else if left(admemail,4) = "ZER=" then do
return right(admemail,length(admemail)-4) || ".sub.org"
end; else if left(admemail,5) = "MAUS=" then do
return right(admemail,length(admemail)-5)
else
say admemail
return
end
end